home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / HFTUBE.ZIP / AALIAS.ASM next >
Assembly Source File  |  1995-04-28  |  4KB  |  95 lines

  1. CodeAntialias                Segment   Para Use16
  2.                              Assume    Cs:CodeAntialias
  3.  
  4. ; ===========================================================================
  5. ;   Antialiasing move routine from 512 wide video buffer
  6. ;   ////////////////////////////////////////////////////
  7. ;     Ds=color table segment
  8. ;    Ecx=0FF380000h+video segment
  9. ; ===========================================================================
  10.  
  11.   Antialias512               Proc      Far
  12.                              .486
  13.  
  14.                              Xor       Edx,Edx
  15.                              Mov       Bp,0A000h
  16.          MoveNextLine:       Mov       Si,013Ch
  17.                              Mov       Fs,Cx
  18.                              Mov       Es,Bp
  19.          AntialiaseLine:     Mov       Di,Fs:[Si+03h]
  20.                              Mov       Bh,Fs:[Si+0203h]
  21.                              Mov       Bl,[Di]
  22.                              Mov       Di,Fs:[Si+02h]
  23.                              Mov       Al,[Bx]
  24.                              Mov       Bh,Fs:[Si+0202h]
  25.                              Mov       Bl,[Di]
  26.                              Mov       Di,Fs:[Si+01h]
  27.                              Mov       Ah,[Bx]
  28.                              Bswap     Eax
  29.                              Mov       Bh,Fs:[Si+0201h]
  30.                              Mov       Bl,[Di]
  31.                              Mov       Di,Fs:[Si]
  32.                              Mov       Ah,[Bx]
  33.                              Mov       Bh,Fs:[Si+0200h]
  34.                              Mov       Bl,[Di]
  35.                              Mov       Fs:[Si+02h],Edx
  36.                              Mov       Al,[Bx]
  37.                              Mov       Es:[Si],Eax
  38.                              Sub       Si,04h
  39.                              Jnc       AntialiaseLine
  40.                              Mov       Fs:[0000h],Dx
  41.                              Add       Bp,0014h
  42.                              Add       Ecx,00010020h
  43.                              Jnc       MoveNextLine
  44.                              Mov       Di,0130h
  45.                              Mov       Fs:[0140h],Dl
  46.          ClearLastLine:      Mov       Fs:[Di],Edx
  47.                              Mov       Fs:[Di+04h],Edx
  48.                              Mov       Fs:[Di+08h],Edx
  49.                              Mov       Fs:[Di+0Ch],Edx
  50.                              Sub       Di,10h
  51.                              Jnc       ClearLastLine
  52.  
  53.                              RetF
  54.   Antialias512               EndP
  55.  
  56. ; ===========================================================================
  57. ;   Antialiasing move routine from 320 wide video buffer
  58. ;   ////////////////////////////////////////////////////
  59. ;     Ds=color table segment
  60. ;     Fs=video segment
  61. ; ===========================================================================
  62.  
  63.   Antialias320               Proc      Far
  64.                              .486
  65.  
  66.                              Mov       Ax,0A000h
  67.                              Mov       Es,Ax
  68.                              Mov       Si,64000-4
  69.          AntialiaseScreen:   Mov       Di,Fs:[Si+03h]
  70.                              Mov       Bh,Fs:[Si+0143h]
  71.                              Mov       Bl,[Di]
  72.                              Mov       Di,Fs:[Si+02h]
  73.                              Mov       Al,[Bx]
  74.                              Mov       Bh,Fs:[Si+0142h]
  75.                              Mov       Bl,[Di]
  76.                              Mov       Di,Fs:[Si+01h]
  77.                              Mov       Ah,[Bx]
  78.                              Bswap     Eax
  79.                              Mov       Bh,Fs:[Si+0141h]
  80.                              Mov       Bl,[Di]
  81.                              Mov       Di,Fs:[Si]
  82.                              Mov       Ah,[Bx]
  83.                              Mov       Bh,Fs:[Si+0140h]
  84.                              Mov       Bl,[Di]
  85.                              Mov       Al,[Bx]
  86.                              Mov       Es:[Si],Eax
  87.                              Sub       Si,04h
  88.                              Jnc       AntialiaseScreen
  89.  
  90.                              RetF
  91.   Antialias320               EndP
  92.  
  93.  
  94. CodeAntialias                EndS
  95.